using System;
using System.Drawing;

namespace RayDen.Library.Entity.Interface {
    public interface IRenderer : IRayDenLibraryComponent, IParameterBag {
        IRendererStatistics GetRendererInfo();
        string GetCurrentStateInfo();
        void Setup(IRayDenLibraryFrame frame);
        void RenderPreview(Bitmap output, Action<int> progressCallback);
        void StartRendering(Action<IFilmFrame, int> taskCallback, Action<IFilmFrame> endTaskCallback=null);
        void StopRender();

    }
}